package com.aizuda.boot.modules.business.filling.mapper;

import com.aizuda.boot.modules.business.filling.domain.entity.ContractFilingEntity;
import com.aizuda.boot.modules.business.filling.domain.response.FilingShowListDTO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Author sangyirong
 * @ClassName ContractFilingMapper
 * @Version 1.0
 * @Date 2025/6/4 16:30
 */
@Mapper
public interface ContractFilingMapper extends BaseMapper<ContractFilingEntity> {

    /**
     * 分页查询归档主表信息
     *
     * @param page 分页参数
     * @return 分页结果
     */
    IPage<ContractFilingEntity> getFilingMainList(IPage<ContractFilingEntity> page);

    /**
     * 根据归档ID列表获取详细信息（包含聚合数据）
     *
     * @param filingIds 归档ID列表
     * @return 详细信息列表
     */
    List<FilingShowListDTO> getFilingDetailsByIds(@Param("filingIds") List<Integer> filingIds);

}
